package com.micro.school.system.domain.vo;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.micro.school.common.core.annotation.Excel;
import com.micro.school.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.ToString;


/**
 * 【请填写功能名称】对象Vo
 * 
 * @author rakic
 * @date 2025-08-05
 */
@Data
@ToString
public class StudentPayVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 学生主键 */
    @Excel(name = "学生主键")
    private Long studentId;

    /** 缴费金额 */
    @Excel(name = "缴费金额")
    private BigDecimal money;

    /** 退费金额 */
    @Excel(name = "退费金额")
    private BigDecimal refundMoney;

    /** 自主缴费 */
    @Excel(name = "自主缴费")
    private BigDecimal selfMoney;

    /** 缴费时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "缴费时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date feeTime;

    /** 缴费状态0缴费1退费 */
    @Excel(name = "缴费状态0缴费1退费")
    private Long status;

    /** 缴费类型（学年） */
    @Excel(name = "缴费类型", readConverterExp = "学=年")
    private String moneyType;

    /** 支付状态0未支付1已支付2支付失败 */
    @Excel(name = "支付状态0未支付1已支付2支付失败")
    private Long payStatus;

    /** 支付类型 */
    @Excel(name = "支付类型")
    private String paymentMethod;

    /** 缴费项目 */
    @Excel(name = "缴费项目")
    private String title;

    /** 预缴费 */
    @Excel(name = "预缴费")
    private BigDecimal beforePay;

    /** 退款状态 */
    @Excel(name = "退款状态")
    private String refundMethod;

    private Integer feeYearId;

    private String feeYearName;

    private Integer tenantId;

    private String startDate;

    private String endDate;


    private String collegeIdList;


    private int compusId;

    private int[] compusIds;




}
